package cn.com.generaldata.jsme_indicator_system.entity;

import java.sql.Timestamp;

import lombok.Data;

import org.nutz.dao.entity.annotation.ColDefine;
import org.nutz.dao.entity.annotation.Column;
import org.nutz.dao.entity.annotation.Name;
import org.nutz.dao.entity.annotation.Readonly;
import org.nutz.dao.entity.annotation.Table;
import org.nutz.dao.entity.annotation.View;

/**
 * 报表类型实体
 */
@Data
@Table("tbl_report_type")
public class ReportType implements java.io.Serializable {
	private static final long serialVersionUID = 5454155825314635342L;

	// columns START
	/**
	 * id db_column: id
	 */
	@Name
	@Column("id")
	private String id;
	/**
	 * 报表类型名称 db_column: type_name
	 */
	@Column("type_name")
	private String typeName;
	/**
	 * 报表类型名称 db_column: sort_no
	 */
	@Column("sort_no")
	private Integer sortNo;
	/**
	 * 报表类型名称 db_column: sub_sort_no
	 */
	@Column("sub_sort_no")
	private Integer subSortNo;

	/**
	 * 报表号 db_column: type_no
	 */
	@Column("type_no")
	private String typeNo;
	/**
	 * 报表代码 db_column: type_code
	 */
	@Column("type_code")
	private String typeCode;
	/**
	 * 统计制度 db_column: stat_system
	 */
	@Column("stat_system")
	private Integer statSystem;
	/**
	 * 制表机关代码 db_column: type_report_admin
	 */
	@Column("type_report_admin")
	private Integer typeReportAdmin;
	/**
	 * 批准机关代码 db_column: type_approve_admin
	 */
	@Column("type_approve_admin")
	private Integer typeApproveAdmin;
	/**
	 * 批准文号 db_column: type_approve_no
	 */
	@Column("type_approve_no")
	private String typeApproveNo;
	/**
	 * 有效期至 db_column: type_expire_date
	 */
	@Column("type_expire_date")
	private String typeExpireDate;
	/**
	 * 审核单位 db_column: type_measure_unit
	 */
	@Column("type_measure_unit")
	private String typeMeasureUnit;
	/**
	 * 是否存在上次对比 db_column: type_last_time
	 */
	@Column("type_last_time")
	private Integer typeLastTime;
	/**
	 * 报表的年报属性 1：半年报（在报表中时：1：当年第一次上报 4：当年第二次上报） 2：全年报一次 3: 快报(每年年初一月份) db_column: type_year_time
	 */
	@Column("type_year_time")
	private String typeYearTime;
	/**
	 * 报表的时段属性 0：月报 1：年报 2：季报 db_column: type_time
	 */
	@Column("type_time")
	private String typeTime;
	/**
	 * 报表报送时限 db_column: time_limit
	 */
	@Column("time_limit")
	private int timeLimit;
	/**
	 * /**
	 * 报表数据类型(1:单元格式，2:行式) db_column: data_type
	 */
	@Column("data_type")
	private Integer dataType;
	/**
	 * 行式报表主列所处报表列,报表数据类型为行式必须有值 db_column: master_column
	 */
	@Column("master_column")
	private String masterColumn;

	/**
	 *直报到省 db_column: master_column
	 */
	@Column("direct_sumbit_province")
	private Integer directProvince;

	/**
	 * 对应上个报表版本的id db_column: prev_version_id
	 */
	@Column("prev_version_id")
	private String prevVersionId;
	/**
	 * 版本id db_column: version_id
	 */
	@Column("version_id")
	private Integer versionId;
	/**
	 * 报表模板 db_column: template
	 */
	@Column("template")
	private String template;
	
	@Column("data_summarization")
	private Integer dataSummarization;
	
	
	/**
	 * 报表设计器生成的对象信息 db_column: report_info
	 */
	@Column("report_info")
	private String reportInfo;
	/**
	 * 备注 db_column: remark
	 */
	@Column("remark")
	private String remark;
	/**
	 * 创建时间 db_column: create_time
	 */
	@Column("create_time")
	private java.sql.Timestamp createTime = new Timestamp(System.currentTimeMillis());
	/**
	 * 最后修改时间 db_column: last_update
	 */
	@Column("last_update")
	private java.sql.Timestamp lastUpdate = new Timestamp(System.currentTimeMillis());

	// columns END

	// 显示属性
	@Column("version_name")
	@Readonly
	private String versionName;

}
